﻿using System.Drawing;

namespace hanuota
{
    internal class Program
    {
        static void Main(string[] args)
        {
            //从上到下依次是1号盘子，2号盘子.....，n号盘子
            // 最终从A移动到C
            Console.WriteLine("请输入盘子数：");
            int m = int.Parse(Console.ReadLine());
            moveproject(m, 'A', 'B', 'C');

            

        }
        public static void moveproject(int n,char a,char b, char c)
        {
            //  最后一次退出递归
            if(n==1)
            {
                move(n,a, c);
            }
            else
            {
                //将n-1个盘子由A经过C移动到B
                moveproject(n - 1, a,c,b);

                move(n,a, c);           
                //剩下的n-1盘子，由B经过A移动到C
                moveproject(n - 1, b,a,c);

            }

        }
        // 输出函数
        public static void move(int m,char a, char c)
        {
            Console.WriteLine("移动"+m+"号盘子"+a+"-->"+c);
        }

    }
}

